package ru.chezclif.lern.conread.exceptions;

import ru.chezclif.lern.conread.Preconditions;

/**
 * Класс передающий исключение об ошибках, когда файл с настройками оказывается пустым
 * 
 * @author Vit
 */
public class EmptyFileExeption extends PropertiesReadException {
	/**
	 * Полный путь к файлу
	 */
	private final String filename;

	/**
	 * Передать сообщение об ошибке
	 * 
	 * @param filename полный путь к файлу
	 */
	public EmptyFileExeption(String filename) {
		super("This file of properties is empty: " + filename);
		Preconditions.notBlank(filename);
		this.filename = filename;
	}

	/**
	 * Передать сообщение об ошибке, с указанием пути и названием файла, а также исключение
	 * 
	 * @param e исключение
	 * @param filename полный путь к файлу
	 */
	public EmptyFileExeption(Throwable e, String filename) {
		super(e);
		Preconditions.notNull(e);
		Preconditions.notBlank(filename);
		this.filename = filename;
	}

	/** 
	 * Возвращает значение пути и названия файла 
	 */
	public String getFilename() {
		return filename;
	}
}
